freezed で toJson だけ生成させる方法
@Freezed(toJson: true)
を使いましょう。
@Freezed(toJson: true)
class _Request with _$Request {
const factory _Request({
required String area,
@JsonKey(name: 'date') required DateTime dateTime,
}) = _RequestData;
}
微妙な例
生成はされるが、自前で実装した fromJson
が unused_element
warning が出てしまう。
[Session/7] freezed による JSON シリアライズの導入 by daichikuwa0618 · Pull Request #20 · daichikuwa0618/flutter-weather-app · GitHub
@freezed
class _Request with _$Request {
const factory _Request({
required String area,
@JsonKey(name: 'date') required DateTime dateTime,
}) = _RequestData;
// `fromJson` は `toJson` 生成のための実装で未使用になるのは避けられないため;
// ignore: unused_element
factory _Request.fromJson(Map<String, Object?> json) =>
_$RequestFromJson(json);
}